294 research outputs found

    Decomposition orders : another generalisation of the fundamental theorem of arithmetic

    Get PDF
    We discuss unique decomposition in partial commutative monoids. Inspired by a result from process theory, we propose the notion of decomposition order for partial commutative monoids, and prove that a partial commutative monoid has unique decomposition iff it can be endowed with a decomposition order. We apply our result to establish that the commutative monoid of weakly normed processes modulo bisimulation definable in ACPe with linear communication, with parallel composition as binary operation, has unique decomposition. We also apply our result to establish that the partial commutative monoid associated with a well-founded commutative residual algebra has unique decompositio

    Weak orthogonality implies confluence : the higher-order case

    Get PDF
    In this paper we prove confluence for weakly orthogonal Higher-Order Rewriting Systems. This generalises all the known `confluence by orthogonality' results

    Weak orthogonality implies confluence: the higher-order case

    Get PDF
    In this paper we prove confluence for weakly orthogonal Higher-Order Rewriting Systems. This generalises all the known `confluence by orthogonality' results

    Diagram techniques for confluence

    Get PDF
    AbstractWe develop diagram techniques for proving confluence in abstract reductions systems. The underlying theory gives a systematic and uniform framework in which a number of known results, widely scattered throughout the literature, can be understood. These results include Newman's lemma, Lemma 3.1 of Winkler and Buchberger, the Hindley–Rosen lemma, the Request lemmas of Staples, the Strong Confluence lemma of Huet, the lemma of De Bruijn

    Vicious circles in orthogonal term rewriting systems

    Get PDF
    In this paper we first study the difference between Weak Normalization (WN) and Strong Normalization (SN), in the framework of first order orthogonal rewriting systems. With the help of the Erasure Lemma we establish a Pumping Lemma, yielding information about exceptional terms, defined as terms that are WN but not SN. A corollary is that if an orthogonal TRS is WN, there are no cyclic reductions in finite reduction graphs. This is a stepping stone towards the insight that orthogonal TRSs with the property WN, do not admit cyclic reductions at all

    A Reduction-Preserving Completion for Proving Confluence of Non-Terminating Term Rewriting Systems

    Get PDF
    We give a method to prove confluence of term rewriting systems that contain non-terminating rewrite rules such as commutativity and associativity. Usually, confluence of term rewriting systems containing such rules is proved by treating them as equational term rewriting systems and considering E-critical pairs and/or termination modulo E. In contrast, our method is based solely on usual critical pairs and it also (partially) works even if the system is not terminating modulo E. We first present confluence criteria for term rewriting systems whose rewrite rules can be partitioned into a terminating part and a possibly non-terminating part. We then give a reduction-preserving completion procedure so that the applicability of the criteria is enhanced. In contrast to the well-known Knuth-Bendix completion procedure which preserves the equivalence relation of the system, our completion procedure preserves the reduction relation of the system, by which confluence of the original system is inferred from that of the completed system

    Maximal Sharing in the Lambda Calculus with letrec

    Full text link
    Increasing sharing in programs is desirable to compactify the code, and to avoid duplication of reduction work at run-time, thereby speeding up execution. We show how a maximal degree of sharing can be obtained for programs expressed as terms in the lambda calculus with letrec. We introduce a notion of `maximal compactness' for lambda-letrec-terms among all terms with the same infinite unfolding. Instead of defined purely syntactically, this notion is based on a graph semantics. lambda-letrec-terms are interpreted as first-order term graphs so that unfolding equivalence between terms is preserved and reflected through bisimilarity of the term graph interpretations. Compactness of the term graphs can then be compared via functional bisimulation. We describe practical and efficient methods for the following two problems: transforming a lambda-letrec-term into a maximally compact form; and deciding whether two lambda-letrec-terms are unfolding-equivalent. The transformation of a lambda-letrec-term LL into maximally compact form L0L_0 proceeds in three steps: (i) translate L into its term graph G=[[L]]G = [[ L ]]; (ii) compute the maximally shared form of GG as its bisimulation collapse G0G_0; (iii) read back a lambda-letrec-term L0L_0 from the term graph G0G_0 with the property [[L0]]=G0[[ L_0 ]] = G_0. This guarantees that L0L_0 and LL have the same unfolding, and that L0L_0 exhibits maximal sharing. The procedure for deciding whether two given lambda-letrec-terms L1L_1 and L2L_2 are unfolding-equivalent computes their term graph interpretations [[L1]][[ L_1 ]] and [[L2]][[ L_2 ]], and checks whether these term graphs are bisimilar. For illustration, we also provide a readily usable implementation.Comment: 18 pages, plus 19 pages appendi

    Origin tracking for higher-order term rewriting systems

    Full text link
    • …
    corecore